// Karma configuration file, see link for more information
// https://karma-runner.github.io/0.13/config/configuration-file.html

module.exports = function (config) {
  config.set({
    // 基础路径（适用file、exclude属性）
    basePath: '',
    // 测试框架，@angular/cli 指Angular测试工具集
    frameworks: ['jasmine', '@angular/cli'],
    // 加载插件清单
    plugins: [
      require('karma-jasmine'),
      require('karma-chrome-launcher'),
      require('karma-jasmine-html-reporter'),
      require('karma-coverage-istanbul-reporter'),
      require('@angular/cli/plugins/karma')
    ],
    client:{
      // 当测试运行完成后是否清除上文
      clearContext: false // leave Jasmine Spec Runner output visible in browser
    },
    // 哪些文件需要被浏览器加载，后面会专门介绍  `test.ts`
    // files: [
    //     { pattern: './src/test.ts', watched: false }
    // ],
     // 插件【karma-coverage-istanbul-reporter】的配置项
    coverageIstanbulReporter: {
      // 覆盖率报告方式
      reports: [ 'html', 'lcovonly' ],
      fixWebpackSourcePaths: true
    },
     // 指定angular cli环境
    angularCli: {
      environment: 'dev'
    },
     // 测试结果报告方式
    reporters: ['progress', 'kjhtml'],
    port: 9876,
    colors: true,
    // 日志等级
    logLevel: config.LOG_INFO,
    // 是否监听测试文件
    autoWatch: true,
    // 测试浏览器列表
    browsers: ['Chrome'],
     // 持续集成模式，true：表示浏览器执行测试后退出
    singleRun: false
  });
};
